package com.ytf.test.third;

/**
 * @author: YTF
 * @date: 2024/9/12 15:21
 * @version: 1.0
 * @description: 短路
 */
public class ShortCircuit {
    static boolean test1(int i){
        System.out.println("test1 i:"+i);
        System.out.println("i<1:"+(i<1));
        return i<1;
    }
    static boolean test2(int i){
        System.out.println("test2 i:"+i);
        System.out.println("i<2:"+(i<2));
        return i<2;
    }
    static boolean test3(int i){
        System.out.println("test3 i:"+i);
        System.out.println("i<3:"+(i<3));
        return i<3;
    }

    public static void main(String[] args) {
        boolean bool = test1(0)&&test2(2)&&test3(2);
        System.out.println("expression is " +bool);

        /**
         * Output:
         * test1 i:0
         * i<1:true
         * test2 i:2
         * i<2:false
         * expression is false
         * 总结
         *  一但得出结果就不再往下计算，这就是短路。
         *  通过短路可以提升性能
         */
    }
}
